package com.ruoyi.ring.service;

import com.ruoyi.ring.domain.HealthQuestionAnswer;
import com.ruoyi.ring.domain.dto.UserHealthQuestionDTO;
import com.ruoyi.ring.domain.vo.UserHealthQuestionVO;

import java.util.List;

/**
 * 问卷答案Service接口
 * 
 * @author liuwp
 * @date 2025-07-29
 */
public interface IHealthQuestionAnswerService 
{
    /**
     * 查询问卷答案
     * 
     * @param id 问卷答案主键
     * @return 问卷答案
     */
    public HealthQuestionAnswer selectHealthQuestionAnswerById(Long id);

    /**
     * 查询问卷答案列表
     * 
     * @param healthQuestionAnswer 问卷答案
     * @return 问卷答案集合
     */
    public List<HealthQuestionAnswer> selectHealthQuestionAnswerList(HealthQuestionAnswer healthQuestionAnswer);

    /**
     * 根据业务主键查询一条记录：问卷答案
     *
     * @param healthQuestionAnswer 问卷答案
     * @return 问卷答案
     */
    public HealthQuestionAnswer selectOneHealthQuestionAnswer(HealthQuestionAnswer healthQuestionAnswer);

    /**
     * 新增问卷答案
     * 
     * @param healthQuestionAnswer 问卷答案
     * @return 结果
     */
    public int insertHealthQuestionAnswer(HealthQuestionAnswer healthQuestionAnswer);

    /**
     * 修改问卷答案
     * 
     * @param healthQuestionAnswer 问卷答案
     * @return 结果
     */
    public int updateHealthQuestionAnswer(HealthQuestionAnswer healthQuestionAnswer);

    /**
     * 修改问卷答案
     *
     * @param healthQuestionAnswer 问卷答案
     * @param healthQuestionAnswer 问卷答案条件
     * @return 结果
     */
    public int updateHealthQuestionAnswerCondition(HealthQuestionAnswer healthQuestionAnswer, HealthQuestionAnswer healthQuestionAnswerCondition);

    /**
     * 批量删除问卷答案
     * 
     * @param ids 需要删除的问卷答案主键集合
     * @return 结果
     */
    public int deleteHealthQuestionAnswerByIds(Long[] ids);

    /**
     * 删除问卷答案信息
     * 
     * @param id 问卷答案主键
     * @return 结果
     */
    public int deleteHealthQuestionAnswerById(Long id);

    /**
     * 条件删除问卷答案
     *
     * @param healthQuestionAnswer 问卷答案
     * @return 结果
     */
    public int deleteHealthQuestionAnswerByCondition(HealthQuestionAnswer healthQuestionAnswer);

    public Long addHealthQuestionAnswer(UserHealthQuestionDTO userHealthQuestionDTO);
    public int updHealthQuestionAnswer(UserHealthQuestionDTO userHealthQuestionDTO);
    UserHealthQuestionVO queryUserHealthQuestion();
}
